/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package cuentasCobrar;

import conexion.CConexion;
import general.CCo000;
import java.sql.CallableStatement;
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.table.DefaultTableModel;
import utilitario.CFecha;

/**
 *
 * @author SISTEMAS
 */
public class CCxc100 extends CConexion {

    private CCo000 co000 = null;
    private String compania = null;
    private String usuarioActual = null;

    public CCxc100() {
        super();
        co000 = new CCo000();
        compania = login.getCompaniaActual();
        usuarioActual = login.getUsuarioLogin();
    }

    /*public ResultSet buscarCuentasCobrar(DefaultTableModel tabla, int rowTable1, int band) throws SQLException {
    
    Statement stncBuscarCuentasCobrar = this.getConexion().createStatement();
    ResultSet rsBuscarCuentasCobrar = null;
    if (band == 0) {
    String sqlBuscarCuentasCobrar = "select * from cxc100 where cxc100nocia = '" + loginU.getClaveLogin() + "' and cxc100cocl = '" + tabla.getValueAt(rowTable1, 0) + "' and cxc100sald != 0 order by cxc100fech";
    rsBuscarCuentasCobrar = stncBuscarCuentasCobrar.executeQuery(sqlBuscarCuentasCobrar);
    return rsBuscarCuentasCobrar;
    } else {
    String sqlBuscarCuentasCobrar = "select * from cxc100 where cxc100nocia = '" + loginU.getClaveLogin() + "' and cxc100cocl = '" + tabla.getValueAt(rowTable1, 0) + "' and cxc100sald != 0";
    rsBuscarCuentasCobrar = stncBuscarCuentasCobrar.executeQuery(sqlBuscarCuentasCobrar);
    return rsBuscarCuentasCobrar;
    }
    }*/
    public ResultSet buscarCuentasCobrar(String codigo, int band) throws SQLException {

        Statement stncBuscarCuentasCobrar = this.getConexion().createStatement();
        ResultSet rsBuscarCuentasCobrar = null;
        if (band == 0) {
            String sqlBuscarCuentasCobrar = "select * from cxc100 where cxc100nocia = '" + login.getCompaniaActual() + "' and cxc100cocl = '" + codigo + "' and cxc100sald != 0 order by cxc100fech";
            rsBuscarCuentasCobrar = stncBuscarCuentasCobrar.executeQuery(sqlBuscarCuentasCobrar);
            return rsBuscarCuentasCobrar;
        } else {
            String sqlBuscarCuentasCobrar = "select * from cxc100 where cxc100nocia = '" + login.getCompaniaActual() + "' and cxc100cocl = '" + codigo + "' and cxc100sald != 0";
            rsBuscarCuentasCobrar = stncBuscarCuentasCobrar.executeQuery(sqlBuscarCuentasCobrar);
            return rsBuscarCuentasCobrar;
        }
    }

    public ResultSet buscarCuenta(String noco) throws SQLException {
        Statement stncBuscarCuenta = this.getConexion().createStatement();
        ResultSet rsBuscarCuenta = null;
        String sqlBuscarCuenta = "select * from cxc100 where cxc100nocia = '" + login.getCompaniaActual() + "' and cxc100noco='" + noco + "'";
        rsBuscarCuenta = stncBuscarCuenta.executeQuery(sqlBuscarCuenta);
        return rsBuscarCuenta;
    }

    public ResultSet busquedaAvanzada(DefaultTableModel modeloTblCuentasCobrar, int rowTable2) throws SQLException {
        Statement stncBusquedaAvanzada = this.getConexion().createStatement();
        String sqlBusquedaAvanzada = "select * from cxc100 where cxc100nocia = '" + login.getCompaniaActual() + "' and cxc100alma = '" + (String) modeloTblCuentasCobrar.getValueAt(rowTable2, 6) + "' and cxc100tido = '" + (String) modeloTblCuentasCobrar.getValueAt(rowTable2, 0) + "' and cxc100nodo = '" + (String) modeloTblCuentasCobrar.getValueAt(rowTable2, 5) + "'";
        ResultSet rsBusquedaAvanzada = null;
        rsBusquedaAvanzada = stncBusquedaAvanzada.executeQuery(sqlBusquedaAvanzada);
        rsBusquedaAvanzada.next();
        return rsBusquedaAvanzada;
    }

    public void moverCuentasPorCobrar(String tido, int nodo, String noco, int comp, String fech, String cocl, String desc, String ticr, int plaz, double valo, String timo, String coco, String obs1, String obs2, int nore, double inmo, double gaju, String sucursal) throws SQLException {
        String moneda = "N";
        if (co000.moneda()) {
            moneda = "E";
        }
        CallableStatement prcProcedimientoAlmacenado = this.getConexion().prepareCall("{ call actualiza_cxc(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) }");
        prcProcedimientoAlmacenado.setString("nocia", compania);
        prcProcedimientoAlmacenado.setString("alma", sucursal);
        prcProcedimientoAlmacenado.setString("tido", tido);
        prcProcedimientoAlmacenado.setInt("nodo", nodo);
        prcProcedimientoAlmacenado.setInt("comp", comp);
        prcProcedimientoAlmacenado.setInt("noco", Integer.parseInt(noco));
        prcProcedimientoAlmacenado.setString("comp", Integer.toString(comp));
        prcProcedimientoAlmacenado.setDate("fech", Date.valueOf(fech));
        prcProcedimientoAlmacenado.setInt("cocl", Integer.parseInt(cocl));
        prcProcedimientoAlmacenado.setString("descri", desc);
        prcProcedimientoAlmacenado.setString("mone", moneda);
        prcProcedimientoAlmacenado.setString("ticr", ticr);
        prcProcedimientoAlmacenado.setInt("plaz", plaz);
        prcProcedimientoAlmacenado.setDouble("valo", valo);
        prcProcedimientoAlmacenado.setString("timo", timo);
        prcProcedimientoAlmacenado.setString("coco", coco);
        prcProcedimientoAlmacenado.setString("obs1", obs1);
        prcProcedimientoAlmacenado.setString("obs2", obs2);
        prcProcedimientoAlmacenado.setString("nore", Integer.toString(nore));
        prcProcedimientoAlmacenado.setDouble("inmo", inmo);
        prcProcedimientoAlmacenado.setDouble("gaju", gaju);
        prcProcedimientoAlmacenado.setString("usuario", usuarioActual);
        prcProcedimientoAlmacenado.execute();
    }
}
